/* 
 *   WWW.COO8.COM  
 */

package com.gm.memberShip.menu.model; 

import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;


import java.util.*;
import org.apache.commons.lang.StringUtils;
 

import com.gm.memberShip.menu.model.*;
import com.gm.memberShip.menu.persistence.interfaces.*;
import com.gm.memberShip.menu.business.interfaces.*;  

/**
 * @author  JIANGCHENG
 * @version 1.0
 * @since 1.0
 */


public class UserInfo  implements java.io.Serializable {
	private static final long serialVersionUID = 5454155825314635342L;
	
	  
	//columns START
	private java.lang.Object applicationId;
	private java.lang.Object userId;
	private java.lang.Object password;
	private java.lang.Integer passwordFormat;
	private java.lang.Object passwordSalt;
	private java.lang.Object mobilePin;
	private java.lang.Object email;
	private java.lang.Object lowerEmail;
	private java.lang.Object passwordQuestion;
	private java.lang.Object passwordAnswer;
	private java.lang.Boolean isApproved;
	private java.lang.Boolean isLockedOut;
	private java.util.Date createDate;
	private java.util.Date lastLoginDate;
	private java.util.Date lastPasswordChangeDate;
	private java.util.Date lastLockoutDate;
	private java.lang.Integer failedPasswordAttemptCount;
	private java.util.Date failedPasswordAttemptWindowStart;
	private java.lang.Integer failedPasswordAnswerAttemptCount;
	private java.util.Date failedPasswordAnswerAttemptWindowstart;
	private java.lang.Object comment;
	private java.lang.Boolean userSex;
	//columns END

	public UserInfo(){
	}

	public UserInfo(
		java.lang.Object userId
	){
		this.userId = userId;
	} 
		 
	public void setApplicationId(java.lang.Object value) {
		this.applicationId = value;
	}
	
	public java.lang.Object getApplicationId() {
		return this.applicationId;
	}
		 
	public void setUserId(java.lang.Object value) {
		this.userId = value;
	}
	
	public java.lang.Object getUserId() {
		return this.userId;
	}
		 
	public void setPassword(java.lang.Object value) {
		this.password = value;
	}
	
	public java.lang.Object getPassword() {
		return this.password;
	}
		 
	public void setPasswordFormat(java.lang.Integer value) {
		this.passwordFormat = value;
	}
	
	public java.lang.Integer getPasswordFormat() {
		return this.passwordFormat;
	}
		 
	public void setPasswordSalt(java.lang.Object value) {
		this.passwordSalt = value;
	}
	
	public java.lang.Object getPasswordSalt() {
		return this.passwordSalt;
	}
		 
	public void setMobilePin(java.lang.Object value) {
		this.mobilePin = value;
	}
	
	public java.lang.Object getMobilePin() {
		return this.mobilePin;
	}
		 
	public void setEmail(java.lang.Object value) {
		this.email = value;
	}
	
	public java.lang.Object getEmail() {
		return this.email;
	}
		 
	public void setLowerEmail(java.lang.Object value) {
		this.lowerEmail = value;
	}
	
	public java.lang.Object getLowerEmail() {
		return this.lowerEmail;
	}
		 
	public void setPasswordQuestion(java.lang.Object value) {
		this.passwordQuestion = value;
	}
	
	public java.lang.Object getPasswordQuestion() {
		return this.passwordQuestion;
	}
		 
	public void setPasswordAnswer(java.lang.Object value) {
		this.passwordAnswer = value;
	}
	
	public java.lang.Object getPasswordAnswer() {
		return this.passwordAnswer;
	}
		 
	public void setIsApproved(java.lang.Boolean value) {
		this.isApproved = value;
	}
	
	public java.lang.Boolean getIsApproved() {
		return this.isApproved;
	}
		 
	public void setIsLockedOut(java.lang.Boolean value) {
		this.isLockedOut = value;
	}
	
	public java.lang.Boolean getIsLockedOut() {
		return this.isLockedOut;
	}
		 
	public void setCreateDate(java.util.Date value) {
		this.createDate = value;
	}
	
	public java.util.Date getCreateDate() {
		return this.createDate;
	}
		 
	public void setLastLoginDate(java.util.Date value) {
		this.lastLoginDate = value;
	}
	
	public java.util.Date getLastLoginDate() {
		return this.lastLoginDate;
	}
		 
	public void setLastPasswordChangeDate(java.util.Date value) {
		this.lastPasswordChangeDate = value;
	}
	
	public java.util.Date getLastPasswordChangeDate() {
		return this.lastPasswordChangeDate;
	}
		 
	public void setLastLockoutDate(java.util.Date value) {
		this.lastLockoutDate = value;
	}
	
	public java.util.Date getLastLockoutDate() {
		return this.lastLockoutDate;
	}
		 
	public void setFailedPasswordAttemptCount(java.lang.Integer value) {
		this.failedPasswordAttemptCount = value;
	}
	
	public java.lang.Integer getFailedPasswordAttemptCount() {
		return this.failedPasswordAttemptCount;
	}
		 
	public void setFailedPasswordAttemptWindowStart(java.util.Date value) {
		this.failedPasswordAttemptWindowStart = value;
	}
	
	public java.util.Date getFailedPasswordAttemptWindowStart() {
		return this.failedPasswordAttemptWindowStart;
	}
		 
	public void setFailedPasswordAnswerAttemptCount(java.lang.Integer value) {
		this.failedPasswordAnswerAttemptCount = value;
	}
	
	public java.lang.Integer getFailedPasswordAnswerAttemptCount() {
		return this.failedPasswordAnswerAttemptCount;
	}
		 
	public void setFailedPasswordAnswerAttemptWindowstart(java.util.Date value) {
		this.failedPasswordAnswerAttemptWindowstart = value;
	}
	
	public java.util.Date getFailedPasswordAnswerAttemptWindowstart() {
		return this.failedPasswordAnswerAttemptWindowstart;
	}
		 
	public void setComment(java.lang.Object value) {
		this.comment = value;
	}
	
	public java.lang.Object getComment() {
		return this.comment;
	}
		 
	public void setUserSex(java.lang.Boolean value) {
		this.userSex = value;
	}
	
	public java.lang.Boolean getUserSex() {
		return this.userSex;
	}

	public String toString() {
		return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
			.append("ApplicationId",getApplicationId())
			.append("UserId",getUserId())
			.append("Password",getPassword())
			.append("PasswordFormat",getPasswordFormat())
			.append("PasswordSalt",getPasswordSalt())
			.append("MobilePin",getMobilePin())
			.append("Email",getEmail())
			.append("LowerEmail",getLowerEmail())
			.append("PasswordQuestion",getPasswordQuestion())
			.append("PasswordAnswer",getPasswordAnswer())
			.append("IsApproved",getIsApproved())
			.append("IsLockedOut",getIsLockedOut())
			.append("CreateDate",getCreateDate())
			.append("LastLoginDate",getLastLoginDate())
			.append("LastPasswordChangeDate",getLastPasswordChangeDate())
			.append("LastLockoutDate",getLastLockoutDate())
			.append("FailedPasswordAttemptCount",getFailedPasswordAttemptCount())
			.append("FailedPasswordAttemptWindowStart",getFailedPasswordAttemptWindowStart())
			.append("FailedPasswordAnswerAttemptCount",getFailedPasswordAnswerAttemptCount())
			.append("FailedPasswordAnswerAttemptWindowstart",getFailedPasswordAnswerAttemptWindowstart())
			.append("Comment",getComment())
			.append("UserSex",getUserSex())
			.toString();
	}
	
	public int hashCode() {
		return new HashCodeBuilder()
			.append(getUserId())
			.toHashCode();
	}
	
	public boolean equals(Object obj) {
		if(obj instanceof UserInfo == false) return false;
		if(this == obj) return true;
		UserInfo other = (UserInfo)obj;
		return new EqualsBuilder()
			.append(getUserId(),other.getUserId())
			.isEquals();
	}
}

